#!c:\python\python.exe

########################################################################################################################
class static (object):
    '''
    Static data.
    '''

    ####################################################################################################################
    def __init__ (self, value):
        self.value      = value
        self.defaultval = value


    ####################################################################################################################
    def flatten (self):
        # XXX - when we go through and add exception raising, we should uncomment this.
        #if type(self.value) != str:
        #    raise Exception

        return self.value

    ####################################################################################################################
    def iterate (self):
        pass

    ####################################################################################################################
    def random (self):
        pass

    ####################################################################################################################
    def smart (self):
        return self

    ####################################################################################################################
    def next (self):
        return self

    ####################################################################################################################
    def reset (self):
        pass